﻿package 
{
	import flash.text.AntiAliasType;
	import flash.text.TextField;
	import flash.text.TextFieldAutoSize;
	import flash.text.TextFormat;
	import flash.text.TextFormatAlign;

	/**
	 * Klasse die dazu dient mit statischen funktionen Schriften (o.ä.) abzurufen
	 */
	public final class Helper
	{
		private static var _configurations:XML;
		
        /**
         * Hier wird Schriftart 'Interstate Light' eingefügt
         */
        [Embed(source='interstate_light.ttf', fontFamily = 'InterstateLight')]
        private var fontLight:Class;
        
        /**
         * Hier wird Schriftart 'Interstate Regular' eingefügt
         */
        [Embed(source='interstate_regular.ttf', fontFamily = 'InterstateRegular')]
        private var fontGothic:Class;
        
		public function Helper()
		{
			super();
		}
		
		/**
		 * Funktion die ein vorformatiertes Texfeld zurückgibt.
		 * @param size Schriftgröße default: 16
		 * @param color Schriftfarbe default: #00214E
		 * @param regular Use Regular Interstate or Light
		 */
		public static function createTextfield(size:int=15, regular:Boolean=true, color:uint=0x00214e, leading:int=0, center:Boolean = false):TextField
		{
			var txt:TextField = new TextField();
            txt.defaultTextFormat = new TextFormat((regular ? 'InterstateRegular' : 'InterstateLight'),size,color,null,null,null,null,null,(center ? TextFormatAlign.CENTER : TextFormatAlign.LEFT),null,null,null,leading);
            txt.embedFonts = true;
            txt.antiAliasType = AntiAliasType.ADVANCED;
            txt.mouseEnabled = false;
            txt.selectable = false;
            
            txt.backgroundColor = 0xee9999; //zu Testzwecken
            
            return txt;
		}
		
		public static function createSup2(xp:int, yp:int, size:int=9):TextField
		{
			var txt:TextField = Helper.createTextfield(size);
			txt.autoSize = TextFieldAutoSize.LEFT;
			txt.text = '2';
			txt.x = xp;
			txt.y = yp;
			
			return txt;
		}
		
		public static function set configs(value:XML):void
		{
			_configurations = value;
		}
		
		public static function get configs():XML
		{
			return _configurations;
		}
	}
}